package com.xuecheng.content.application.service;

import com.xuecheng.content.application.vo.req.CourseAssociationMediaCmd;
import com.xuecheng.content.application.vo.req.TeachplanCreateCmd;
import com.xuecheng.content.domain.model.dto.TeachplanDto;

import java.util.List;

/**
 * @Author: LiJunXi
 * @Description:
 * @Date: 2024-08-03  16:14
 */
public interface TeachplanApplication {
    List<TeachplanDto> queryTreeNodes(Long courseId);

    void saveOrUpdateTeachplan(TeachplanCreateCmd teachplanCreateCmd);

    void moveDownTeachPlan(Long teachplanId);

    void moveUpTeachPlan(Long teachplanId);

    void deleteTeachPlan(Long teachplanId);

    void associationMedia(CourseAssociationMediaCmd params);

    void deleteAssociationMedia(Long teachplanId, String mediaId);
}
